return {
            {
                "williamboman/mason.nvim",
                config = function()
                    -- Set up Mason before anything else
                    local settings = {
                        ui = {
                            border = "none",
                            icons = {
                                package_installed = "✓",
                                package_pending = "➜",
                                package_uninstalled = "✗",
                            },
                        },
                        log_level = vim.log.levels.INFO,
                        max_concurrent_installers = 4,
                    }
                    require("mason").setup(settings)
                end,
            },

            {
                "WhoIsSethDaniel/mason-tool-installer.nvim",

                config = function()
                    require("mason-tool-installer").setup({
                        ensure_installed = {
                            {
                                "bash-language-server",
                                auto_update = true,
                            },
                            "cmake-language-server",
                            "luacheck",
                            "lua-language-server",
                            "pyright",
                            "marksman",
                            "rust-analyzer",
                            "slint-lsp",
                            "stylua",
                            "svlangserver",
                            "vim-language-server",
                            auto_update = false,
                            run_on_start = true,
                            start_delay = 3000, -- 3 second delay
                            debounce_hours = 5, -- at least 5 hours between attempts to install/update
                        },
                    })
                end,
            },
}
